package hui.zhang.service.system.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import hui.zhang.dao.system.MenuRepository;
import hui.zhang.domain.system.Menu;
import hui.zhang.domain.system.User;
import hui.zhang.service.system.MenuService;

/**
 * 菜单管理
 * @author hui.zhang
 * @date 2017年12月30日 下午7:45:14
 */
@Service
@Transactional
public class MenuServiceImpl implements MenuService {
	@Autowired
	private MenuRepository menuRepository;
	@Override
	public List<Menu> findAll() {
		//System.err.println(menuRepository.findAll());
		return menuRepository.findAll();
	}
	@Override
	public void save(Menu model) {
		// 防止用户没有选中父菜单
		if(model.getParentMenu() != null && model.getParentMenu().getId()==0) {
			model.setParentMenu(null);
		}
		menuRepository.save(model);
	}

	@Override
	public List<Menu> findByUser(User user) {
		if("admin".equals(user.getUsername())) {
			return menuRepository.findAll();
		} else {
			
			return menuRepository.findByUser(user.getId());
		}
	}

}
